home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / ISSUE14 / SYSTEM / HELPDECO.DOC < prev    next >
Encoding:
Text File  |  1996-05-22  |  9.6 KB  |  195 lines

  1. // HELPDECO - Utility-Programm zum Zerlegen von Windows Hilfedateien
  2. // HELPDECO - utility program to dissect Windows help files
  3. //
  4. // HELPDECO zerlegt eine HLP-Datei von Windows 3.0, 3.1, 3.11 und '95 und
  5. // viele MVB-Dateien des Multimedia-Viewers in alle für den jeweiligen
  6. // Hilfecompiler HC30, HC31, HCP und HCW bzw. Multimediacompiler WMVC12
  7. // oder MVC zum erneuten Zusammenbau erforderlichen Dateien. Dazu gehören:
  8. // HPJ - die Projektdatei, als Parameter für den Hilfecompiler anzugeben
  9. // MVP - die Multimediaprojektdatei, als Parameter für den MM-Compiler
  10. // RTF - die Textdatei mit dem gesamten Hilfetext und allen Fußnoten
  11. // PH  - die Phrasen-Datei (wie sie auch vom Hilfecompiler erzeugt wird)
  12. // ICO - ein eventuell der Hilfedatei zugeordnetes Icon
  13. // BMP/WMF/SHG/MRB - alle Bilder in Dateien mit passendem Format
  14. // Baggage - alle als Baggage in der Hilfedatei enthaltenen Dateien
  15. //
  16. // HELPDECO dissects Windows 3.0, 3.1, 3.11 und '95 HLP files and many
  17. // multi media viewer MVB files into all files required for a rebuild
  18. // using HC30, HC31, HCP, and HCW or multi media compilers WMVC12 and MVC
  19. // HPJ - help project file, use as parameter when calling help compiler
  20. // MVP - multi media project file, parameter for multi media compiler
  21. // RTF - text file containing whole content of help file and all footnotes
  22. // PH  - phrases file (same as produced by help compiler)
  23. // ICO - icon of help file if supplied
  24. // BMP/WMF/SHG/MRB - embedded pictures in appropriate format
  25. // Baggage - all baggage files contained in help file
  26. //
  27. // HELPDECO wird von der MS-DOS Kommandozeile aus mit dem Namen der zu
  28. // bearbeitenden Datei, eventuell dem Namen einer internen Datei und
  29. // eventuellen Optionen aufgerufen:
  30. // Call HELPDECO from MS-DOS command line. Supply name of help file
  31. // to use, optional name of internal file, and options if appropriate.
  32. //
  33. // HELPDECO
  34. // Zeigt Benutzungshinweise
  35. // Displays usage
  36. //
  37. // HELPDECO helpfilename
  38. // Zerlegt die Hilfedatei in alle zum erneuten Zusammenbau benötigten
  39. // Dateien. Diese Dateien werden im aktuellen (möglichst leeren)
  40. // Verzeichnis abgelegt. Existierende Dateien werden ohne Rückfrage
  41. // überschrieben wenn die Option /y angegeben wird.
  42. // Decompiles help file into all sources needed for rebuild. All files
  43. // are created in current directory (should be empty). Existing files
  44. // will be overwritten without asking if option /y was specified.
  45. //
  46. // Options: /m kann verwendet werden, um das Durchsuchen von macros
  47. //             nach Topicnamen zu verhindern, wenn dabei Probleme
  48. //             auftreten. Hilfecompiler wird Warnung 4131 melden.
  49. //             May be used to stop parsing macros for topic names.
  50. //             Help compiler will emit Warning 4131.
  51. //          /b kann verwendet werden, um das Auflösen von Browse-
  52. //             Sequenzen zu verhindern, wenn dabei Probleme auftreten.
  53. //             Hilfequelltextdatei enthält dann keine +-Fußnoten.
  54. //             May be used to stop resolving browse sequences. Help
  55. //             source file than contains no + footnotes.
  56. //          /w Erlaubt die Anzeige von Warnungen, die die Meldung 'HELPDECO
  57. //             had problems with' erklären.
  58. //             Enables display of warnings explaining message 'HELPDECO
  59. //             had problems with'.
  60. //
  61. // HELPDECO helpfilename /r
  62. // Erzeugt aus der Hilfedatei eine RTF-Datei, die von WinWord geladen
  63. // dasselbe Aussehen hat wie die von WinHelp angezeigten Hilfeseiten.
  64. // Damit kann eine Hilfedatei komplett gedruckt oder weiterverarbeitet
  65. // werden.
  66. // Converts help file into RTF file of same appearance if loaded into
  67. // WinWord as if displayed by WinHelp. To print or work with complete
  68. // content.
  69. //
  70. // HELPDECO helpfilename /c
  71. // Erzeugt aus der Hilfedatei eine *.CNT-Datei für WinHlp32, die alle
  72. // Kapitel mit Überschriften in der Reihenfolge enthält, in der sie in
  73. // der Hilfedatei auftreten. Die Datei muß dann mit HCW 4.00 oder einem
  74. // Texteditor in eine hierarchische Struktur überarbeitet werden.
  75. // Generates a *.CNT file used by WinHlp32, containing all chapters that
  76. // have titles assigned in the order they appear in the helpfile. This
  77. // file should then be edited using HCW 4.00 or any text editor into a
  78. // hierarchical order.
  79. //
  80. // HELPDECO helpfilename /p
  81. // Prüft Referenzen auf externe Hilfedateien.
  82. // Checks references to external help files.
  83. //
  84. // HELPDECO helpfilename /d
  85. // Zeigt das interne Inhaltsverzeichnis der Hilfedatei
  86. // Displays internal directory of help file
  87. //
  88. // HELPDECO helpfilename /x
  89. // Zeigt das interne Inhaltsverzeichnis als HexDump
  90. // Displays hex dump of internal directory
  91. //
  92. // HELPDECO helpfilename "internalfilename"
  93. // Zeigt die genannte interne Datei in einem passenden Format an, soweit
  94. // die interne Datei anzeigbar ist, sonst als HexDump
  95. // Displays internal file in appropriate format if known, else hex dump
  96. //
  97. // HELPDECO helpfilename "internalfilename" /x
  98. // Zeigt die genannte interne Datei als HexDump
  99. // Displays hex dump of internal file
  100. //
  101. // HELPDECO helpfilename /t
  102. // Zeigt farbcodierten HexDump der |TOPIC-Datei
  103. // Displays color coded hex dump of |TOPIC file
  104. //
  105. // HELPDECO wurde erstellt von / was written by
  106. // Manfred Winterhoff, Geschw.-Scholl-Ring 17, 38444 Wolfsburg, Germany
  107. // CIS 100326,2776
  108. //
  109. // Informieren Sie mich, wenn Sie HELPDECO modifizieren oder erweitern um
  110. // mehr Features und größere Hilfedateien zu bearbeiten.
  111. // Please give me a note if you modify HELPDECO to handle more formats or
  112. // bigger help files.
  113. //
  114. // HELPDECO basiert auf HELPDUMP von Pete Davis veröffentlicht in:
  115. // HELPDECO is based upon HELPDUMP from Pete Davis published in:
  116. // The Windows Help File Format, Dr. Dobbs Journal, Sep/Oct 1993
  117. //
  118. // Die neueste Version von HELPDECO befindet sich stets in:
  119. // The newest public version of HELPDECO is always available at:
  120. // CompuServe Dr. Dobbs Journal DDJFOR Undocumented Corner HELPDCxx.ZIP
  121. //
  122. // HELPDECO ist public domain Software. Der Einsatz erfolgt auf eigene
  123. // Gefahr. Kein Programmteil darf kommerziell verwendet werden. Für das
  124. // Kopieren dürfen keine Gebühren verlangt werden (Sharewarehandel
  125. // Finger weg). Immer auch die Quelltexte weitergeben, da es für einige
  126. // Hilfedateien erforderlich sein kann, das Programm zu verändern.
  127. // HELPDECO is donated to the public domain. Use at your own risk. No
  128. // part of the program may be used commercially. No fees may be charged
  129. // on distributing the program (shareware distributors keep off).
  130. // Always distribute with source as it may be neccessary to modify the
  131. // program to handle certain help files.
  132. //
  133. // Version 1.7
  134. // removed unneccessary output statement
  135. //
  136. // Version 1.6 can now check references to external help files plus:
  137. // duplicate macro names preceeding picture hotspot info skipped
  138. // does not write Win95 commands to multi-media help project files
  139. // changed unhash to circumvent Microsoft-C++ float rounding error
  140. // handles keywords defined inside topic text
  141. //
  142. // Version 1.5
  143. // fixed static on buffer of TopicName function (affected HC30 files)
  144. //
  145. // Version 1.4 fixes some bugs reported by different users:
  146. // buffer overflow in expanding LZ77&RunLen (byPacked 3) images fixed
  147. // embedded images {bmxwd} larger than 32k supported
  148. // extract topic names from jump into external file if no file specified
  149. // handles more phrases on HCW 4.00 (Win95) help files
  150. // Windows 3.1 (HC31) |Phrases always Zeck compressed
  151. // LinkData2 buffer enlarged 1 byte to store trailing NUL character
  152. //
  153. // Version 1.3
  154. // parses examples of {bmc} etc. statements contained in help text correctly
  155. // can now generate a *.CNT content file for Windows 95 / WinHlp32
  156. // Microsoft C: ctype macros (isalnum/isprint) don't work with signed char
  157. //
  158. // Version 1.2 fixes some severe bugs introduced in version 1.1 and:
  159. // tells you which help compiler to use
  160. // collects multiple keyword footnotes into single lines
  161. // handles \r\n in COPYRIGHT
  162. // converts SPC-macro (but only in [CONFIG] section)
  163. // does not generate duplicate MAP-statements if possible
  164. // {button} and {mci,mci_left,mci_right} commands supported
  165. // [BITMAP]-section in HCW 4.00 help files irritated transparent bitmaps
  166. //
  167. // Version 1.1 now supports more features of Win95/HCW 4.00/WinHlp32:
  168. // Supports LCID, CHARSET, AUTO-SIZE HEIGHT, CNT, INDEX_SEPARATORS
  169. // Additional Win95 Macros (to extract original topic names)
  170. // [CONFIG:n] of Win95 supported (internal file |CFn)
  171. // Secondary windows with > footnote supported (internal file |VIOLA)
  172. // Transparent bitmaps supported (bmct,bmlt,bmrt)
  173. // Expanded internal limits as HCW 4.00 allows larger items
  174. // Now does RunLen compressed device dependend bitmaps
  175. // Bugs in handling of metafiles removed
  176. // Bug in placement of pack(1) removed
  177. // Parsing of macros changed (is it really better now ?)
  178. //
  179. // HELPDECO wurde mit über 500 Hilfedateien getestet. Aber einige gehen nicht
  180. // HELPDECO was tested with more than 500 help files. But some don't work
  181. // PRINTMAN.HLP    50.743 03/10/92  3:10 (Hilfe zum Druck-Manager) corrupt
  182. // BACKSDK.MVB  9.367.750 08/09/95 13:30 8b/8c unknown
  183. // bei anderen treten beim Dekompilieren Probleme auf
  184. // others exhibit problems during decompilation
  185. // ISQLW.HLP      693.763 11/16/94 12:00 (Watcom SQL)
  186. // WSQLODBC.HLP    14.995 11/16/94 12:00 (Watcom SQL ODBC)
  187. // FONTEDIT.HLP    16.124 03/10/95 12:00 or 03/23/92  3:10
  188. // UNIDRV.HLP      45.107 31/12/93  3:11
  189. // WIN31WH.HLP  3.386.753 11/17/94  4:50 (Windows 3.1 SDK)
  190. // und einige Hilfedateien sind einfach zu groß wie
  191. // and certain help files are simply too big, like
  192. // DELPHI.HLP   4.765.203 02/17/95  8:00 (DELPHI Hilfe)
  193. // WIN32.HLP   21.992.070 07/11/95  9:50 (Win32 SDK)
  194. //
  195.